home *** CD-ROM | disk | FTP | other *** search
/ Aminet 2 / Aminet AMIGA CDROM (1994)(Walnut Creek)[Feb 1994][W.O. 44790-1].iso / Aminet / gfx / x11 / DaggeX.lha / DaggeX / doc / X.doc < prev    next >
Text File  |  1993-12-08  |  59KB  |  1,387 lines

  1.  
  2.  
  3.  
  4. X(1)                     USER COMMANDS                       X(1)
  5.  
  6.  
  7.  
  8. NAME
  9.      X - a portable, network-transparent window system
  10.  
  11. SYNOPSIS
  12.      The X Window System is a network transparent  window  system
  13.      developed at MIT which runs on a wide range of computing and
  14.      graphics machines.  It should be relatively  straightforward
  15.      to  build  the  MIT software distribution on most ANSI C and
  16.      POSIX compliant  systems.   Commercial  implementations  are
  17.      also available for a wide range of platforms.
  18.  
  19.      The X Consortium requests that the following names  be  used
  20.      when referring to this software:
  21.  
  22.                                   X
  23.                            X Window System
  24.                              X Version 11
  25.                      X Window System, Version 11
  26.                                  X11
  27.  
  28.      _X _W_i_n_d_o_w _S_y_s_t_e_m is a trademark of the  Massachusetts  Insti-
  29.      tute of Technology.
  30.  
  31. DESCRIPTION
  32.      X  Window  System  servers  run  on  computers  with  bitmap
  33.      displays.   The server distributes user input to and accepts
  34.      output requests  from  various  client  programs  through  a
  35.      variety  of  different  interprocess communication channels.
  36.      Although the most common case is for the client programs  to
  37.      be running on the same machine as the server, clients can be
  38.      run transparently from other  machines  (including  machines
  39.      with different architectures and operating systems) as well.
  40.  
  41.      X supports overlapping hierarchical subwindows and text  and
  42.      graphics  operations, on both monochrome and color displays.
  43.      For a full explanation of the functions that are  available,
  44.      see  the  _X_l_i_b - _C _L_a_n_g_u_a_g_e _X _I_n_t_e_r_f_a_c_e manual, the _X _W_i_n_d_o_w
  45.      _S_y_s_t_e_m _P_r_o_t_o_c_o_l specification, the _X _T_o_o_l_k_i_t _I_n_t_r_i_n_s_i_c_s -  _C
  46.      _L_a_n_g_u_a_g_e _I_n_t_e_r_f_a_c_e manual, and various toolkit documents.
  47.  
  48.      The number of programs that use _X is quite large.   Programs
  49.      provided  in  the  core MIT distribution include: a terminal
  50.      emulator (_x_t_e_r_m), a window manager (_t_w_m), a display  manager
  51.      (_x_d_m),  a console redirect program (_x_c_o_n_s_o_l_e), mail managing
  52.      utilities (_x_m_h and _x_b_i_f_f), a manual page browser  (_x_m_a_n),  a
  53.      bitmap editor (_b_i_t_m_a_p), a resource editor (_e_d_i_t_r_e_s), a ditr-
  54.      off previewer (_x_d_i_t_v_i_e_w), access control programs (_x_a_u_t_h and
  55.      _x_h_o_s_t),  user  preference  setting  programs  (_x_r_d_b, _x_c_m_s_d_b,
  56.      _x_s_e_t, _x_s_e_t_r_o_o_t,  _x_s_t_d_c_m_a_p,  and  _x_m_o_d_m_a_p),  a  load  monitor
  57.      (_x_l_o_a_d), clocks (_x_c_l_o_c_k and _o_c_l_o_c_k), a font displayer (_x_f_d),
  58.      utilities for listing information about fonts, windows,  and
  59.      displays    (_x_l_s_f_o_n_t_s,   _x_f_o_n_t_s_e_l,   _x_w_i_n_i_n_f_o,   _x_l_s_c_l_i_e_n_t_s,
  60.  
  61.  
  62.  
  63. X Version 11         Last change: Release 5                     1
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70. X(1)                     USER COMMANDS                       X(1)
  71.  
  72.  
  73.  
  74.      _x_d_p_y_i_n_f_o, and _x_p_r_o_p), a diagnostic for  seeing  what  events
  75.      are  generated  and  when  (_x_e_v),  screen image manipulation
  76.      utilities (_x_w_d, _x_w_u_d, _x_p_r,  and  _x_m_a_g),  and  various  demos
  77.      (_x_e_y_e_s, _i_c_o, _x_g_c, _x_1_1_p_e_r_f, etc.).
  78.  
  79.      Many other utilities, window managers, games, toolkits, etc.
  80.      are included as user-contributed software in the MIT distri-
  81.      bution, or are available using anonymous ftp on  the  Inter-
  82.      net.  See your site administrator for details.
  83.  
  84. STARTING UP
  85.      There are two main ways of getting the X server and an  ini-
  86.      tial  set  of  client  applications started.  The particular
  87.      method used depends on what operating system you are running
  88.      and  on whether or not you use other window systems in addi-
  89.      tion to X.
  90.  
  91.      _x_d_m (the X Display Manager)
  92.              If you  want  to  always  have  X  running  on  your
  93.              display,   your  site  administrator  can  set  your
  94.              machine up to use the X Display Manager  _x_d_m.   This
  95.              program  is  typically started by the system at boot
  96.              time and takes care of keeping  the  server  running
  97.              and  getting  users  logged  in.  If you are running
  98.              _x_d_m, you will see a window on the  screen  welcoming
  99.              you  to  the system and asking for your username and
  100.              password.  Simply type them in as  you  would  at  a
  101.              normal terminal, pressing the Return key after each.
  102.              If you make a mistake, _x_d_m  will  display  an  error
  103.              message  and  ask  you to try again.  After you have
  104.              successfully logged in, _x_d_m will  start  up  your  X
  105.              environment.   By default, if you have an executable
  106.              file named ._x_s_e_s_s_i_o_n in  your  home  directory,  _x_d_m
  107.              will  treat it as a program (or shell script) to run
  108.              to start up your initial clients (such  as  terminal
  109.              emulators,  clocks,  a window manager, user settings
  110.              for things like the background,  the  speed  of  the
  111.              pointer, etc.).  Your site administrator can provide
  112.              details.
  113.  
  114.      _x_i_n_i_t (run manually from the shell)
  115.              Sites that support more than one window system might
  116.              choose to use the _x_i_n_i_t program for starting X manu-
  117.              ally.  If this is true for your machine,  your  site
  118.              administrator  will probably have provided a program
  119.              named "x11", "startx",  or  "xstart"  that  will  do
  120.              site-specific  initialization  (such as loading con-
  121.              venient default resources, running a window manager,
  122.              displaying  a  clock,  and starting several terminal
  123.              emulators) in a nice way.  If  not,  you  can  build
  124.              such a script using the _x_i_n_i_t program.  This utility
  125.              simply runs one user-specified program to start  the
  126.  
  127.  
  128.  
  129. X Version 11         Last change: Release 5                     2
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136. X(1)                     USER COMMANDS                       X(1)
  137.  
  138.  
  139.  
  140.              server,   runs  another  to  start  up  any  desired
  141.              clients, and then waits for either to finish.  Since
  142.              either or both of the user-specified programs may be
  143.              a shell script, this gives  substantial  flexibility
  144.              at  the  expense of a nice interface.  For this rea-
  145.              son, _x_i_n_i_t is not intended for end users.
  146.  
  147. DISPLAY NAMES
  148.      From the user's prospective, every X server  has  a  _d_i_s_p_l_a_y
  149.      _n_a_m_e of the form:
  150.  
  151.                  _h_o_s_t_n_a_m_e:_d_i_s_p_l_a_y_n_u_m_b_e_r._s_c_r_e_e_n_n_u_m_b_e_r
  152.  
  153.      This information is used by the application to determine how
  154.      it  should  connect to the server and which screen it should
  155.      use by default (on displays with multiple monitors):
  156.  
  157.      _h_o_s_t_n_a_m_e
  158.              The _h_o_s_t_n_a_m_e specifies the name of  the  machine  to
  159.              which  the  display is physically connected.  If the
  160.              hostname is not given, the  most  efficient  way  of
  161.              communicating  to  a server on the same machine will
  162.              be used.
  163.  
  164.      _d_i_s_p_l_a_y_n_u_m_b_e_r
  165.              The phrase "display" is usually  used  to  refer  to
  166.              collection  of monitors that share a common keyboard
  167.              and pointer (mouse, tablet,  etc.).   Most  worksta-
  168.              tions tend to only have one keyboard, and therefore,
  169.              only one display.  Larger, multi-user systems,  how-
  170.              ever,  will frequently have several displays so that
  171.              more than one person can be doing graphics  work  at
  172.              once.  To avoid confusion, each display on a machine
  173.              is assigned a _d_i_s_p_l_a_y _n_u_m_b_e_r (beginning at  0)  when
  174.              the  X  server  for  that  display  is started.  The
  175.              display number must always be  given  in  a  display
  176.              name.
  177.  
  178.      _s_c_r_e_e_n_n_u_m_b_e_r
  179.              Some displays share a single  keyboard  and  pointer
  180.              among  two or more monitors.  Since each monitor has
  181.              its own set of windows, each screen  is  assigned  a
  182.              _s_c_r_e_e_n _n_u_m_b_e_r (beginning at 0) when the X server for
  183.              that display is started.  If the  screen  number  is
  184.              not given, then screen 0 will be used.
  185.  
  186.      On POSIX systems, the default display name is stored in your
  187.      DISPLAY environment variable.  This variable is set automat-
  188.      ically by the _x_t_e_r_m terminal emulator.   However,  when  you
  189.      log  into  another  machine on a network, you'll need to set
  190.      DISPLAY by hand to point to your display.  For example,
  191.  
  192.  
  193.  
  194.  
  195. X Version 11         Last change: Release 5                     3
  196.  
  197.  
  198.  
  199.  
  200.  
  201.  
  202. X(1)                     USER COMMANDS                       X(1)
  203.  
  204.  
  205.  
  206.          % setenv DISPLAY myws:0
  207.          $ DISPLAY=myws:0; export DISPLAY
  208.      The _x_o_n script can be used to start an X program on a remote
  209.      machine;   it   automatically   sets  the  DISPLAY  variable
  210.      correctly.
  211.  
  212.      Finally, most X programs accept a  command  line  option  of
  213.      -display _d_i_s_p_l_a_y_n_a_m_e to temporarily override the contents of
  214.      DISPLAY.  This is most  commonly  used  to  pop  windows  on
  215.      another  person's screen or as part of a "remote shell" com-
  216.      mand to start an xterm pointing back to your  display.   For
  217.      example,
  218.  
  219.          % xeyes -display joesws:0 -geometry 1000x1000+0+0
  220.          % rsh big xterm -display myws:0 -ls </dev/null &
  221.  
  222.      X servers listen for connections on a variety  of  different
  223.      communications   channels   (network  byte  streams,  shared
  224.      memory, etc.).  Since there can be more than one way of con-
  225.      tacting  a  given  server,  The _h_o_s_t_n_a_m_e part of the display
  226.      name is used to determine the type of channel (also called a
  227.      transport  layer)  to  be used.  X servers generally support
  228.      the following types of connections:
  229.  
  230.      _l_o_c_a_l
  231.              The hostname part of the display name should be  the
  232.              empty  string.  For example:  :_0, :_1, and :_0._1.  The
  233.              most efficient local transport will be chosen.
  234.  
  235.      _T_C_P/_I_P
  236.              The hostname part of the display name should be  the
  237.              server  machine's  IP  address  name.  Full Internet
  238.              names, abbreviated names, and IP addresses  are  all
  239.              allowed.   For example:  _e_x_p_o._l_c_s._m_i_t._e_d_u:_0, _e_x_p_o:_0,
  240.              _1_8._3_0._0._2_1_2:_0, _b_i_g_m_a_c_h_i_n_e:_1, and _h_y_d_r_a:_0._1.
  241.  
  242.      _D_E_C_n_e_t
  243.              The hostname part of the display name should be  the
  244.              server  machine's  nodename  followed  by two colons
  245.              instead of one.  For example:  _m_y_w_s::_0, _b_i_g::_1,  and
  246.              _h_y_d_r_a::_0._1.
  247.  
  248. ACCESS CONTROL
  249.      An X  server  can  use  several  types  of  access  control.
  250.      Mechanisms provided in Release 5 are:
  251.          Host Access                   Simple host-based access control.
  252.          MIT-MAGIC-COOKIE-1            Shared plain-text "cookies".
  253.          XDM-AUTHORIZATION-1           Secure DES based private-keys.
  254.          SUN-DES-1                     Based on Sun's secure rpc system.
  255.  
  256.      _X_d_m initializes access control  for  the  server,  and  also
  257.      places authorization information in a file accessible to the
  258.  
  259.  
  260.  
  261. X Version 11         Last change: Release 5                     4
  262.  
  263.  
  264.  
  265.  
  266.  
  267.  
  268. X(1)                     USER COMMANDS                       X(1)
  269.  
  270.  
  271.  
  272.      user.  Normally, the list of hosts  from  which  connections
  273.      are  always  accepted  should be empty, so that only clients
  274.      with are explicitly authorized can connect to  the  display.
  275.      When  you  add  entries  to  the host list (with _x_h_o_s_t), the
  276.      server no longer performs any authorization  on  connections
  277.      from those machines.  Be careful with this.
  278.  
  279.      The file from which _X_l_i_b extracts authorization data can  be
  280.      specified  with  the  environment  variable  XAUTHORITY, and
  281.      defaults to the file .Xauthority in the home directory.  _X_d_m
  282.      uses  $HOME/.Xauthority  and  will  create  it  or  merge in
  283.      authorization records if it already exists when a user  logs
  284.      in.
  285.  
  286.      If you use several machines, and share a common home  direc-
  287.      tory  across  all of the machines by means of a network file
  288.      system, then you never really have to worry about authoriza-
  289.      tion  files,  the  system  should work correctly by default.
  290.      Otherwise,  as  the   authorization   files   are   machine-
  291.      independent,  you  can  simply copy the files to share them.
  292.      To manage authorization  files,  use  _x_a_u_t_h.   This  program
  293.      allows  you  to  extract  records and insert them into other
  294.      files.  Using this, you can  send  authorization  to  remote
  295.      machines  when  you  login,  if  the remote machine does not
  296.      share a common home directory with your local machine.  Note
  297.      that  authorization information transmitted ``in the clear''
  298.      through a network file system or using _f_t_p  or  _r_c_p  can  be
  299.      ``stolen'' by a network eavesdropper, and as such may enable
  300.      unauthorized access.  In many  environments  this  level  of
  301.      security  is  not  a concern, but if it is, you need to know
  302.      the exact semantics of the particular authorization data  to
  303.      know if this is actually a problem.
  304.  
  305.      For more information on access control,  see  the  _X_s_e_c_u_r_i_t_y
  306.      manual page.
  307.  
  308. GEOMETRY SPECIFICATIONS
  309.      One of the advantages of using  window  systems  instead  of
  310.      hardwired  terminals  is  that applications don't have to be
  311.      restricted to a particular size or location on  the  screen.
  312.      Although the layout of windows on a display is controlled by
  313.      the window manager  that  the  user  is  running  (described
  314.      below),  most  X  programs accept a command line argument of
  315.      the  form  -geometry  _W_I_D_T_H_x_H_E_I_G_H_T+_X_O_F_F+_Y_O_F_F  (where  _W_I_D_T_H,
  316.      _H_E_I_G_H_T,  _X_O_F_F,  and  _Y_O_F_F are numbers) for specifying a pre-
  317.      ferred size and location for this application's main window.
  318.  
  319.      The _W_I_D_T_H and _H_E_I_G_H_T parts of the geometry specification are
  320.      usually  measured  in either pixels or characters, depending
  321.      on the application.  The _X_O_F_F and _Y_O_F_F parts are measured in
  322.      pixels  and  are  used to specify the distance of the window
  323.      from the left or right and  top  and  bottom  edges  of  the
  324.  
  325.  
  326.  
  327. X Version 11         Last change: Release 5                     5
  328.  
  329.  
  330.  
  331.  
  332.  
  333.  
  334. X(1)                     USER COMMANDS                       X(1)
  335.  
  336.  
  337.  
  338.      screen,  respectively.   Both  types of offsets are measured
  339.      from the indicated edge of the screen to  the  corresponding
  340.      edge  of  the  window.  The X offset may be specified in the
  341.      following ways:
  342.  
  343.      +_X_O_F_F   The left edge of the window is  to  be  placed  _X_O_F_F
  344.              pixels in from the left edge of the screen (i.e. the
  345.              X coordinate of the window's origin will  be  _X_O_F_F).
  346.              _X_O_F_F  may  be  negative,  in which case the window's
  347.              left edge will be off the screen.
  348.  
  349.      -_X_O_F_F   The right edge of the window is to  be  placed  _X_O_F_F
  350.              pixels  in  from the right edge of the screen.  _X_O_F_F
  351.              may be negative, in which case  the  window's  right
  352.              edge will be off the screen.
  353.  
  354.      The Y offset has similar meanings:
  355.  
  356.      +_Y_O_F_F   The top edge of the window  is  to  be  _Y_O_F_F  pixels
  357.              below the top edge of the screen (i.e. the Y coordi-
  358.              nate of the window's origin will be _Y_O_F_F).  _Y_O_F_F may
  359.              be  negative,  in  which  case the window's top edge
  360.              will be off the screen.
  361.  
  362.      -_Y_O_F_F   The bottom edge of the window is to be  _Y_O_F_F  pixels
  363.              above  the  bottom  edge of the screen.  _Y_O_F_F may be
  364.              negative, in which case  the  window's  bottom  edge
  365.              will be off the screen.
  366.  
  367.      Offsets must be given as pairs; in other words, in order  to
  368.      specify  either  _X_O_F_F or _Y_O_F_F both must be present.  Windows
  369.      can be placed in the four corners of the  screen  using  the
  370.      following specifications:
  371.  
  372.      +_0+_0    upper left hand corner.
  373.  
  374.      -_0+_0    upper right hand corner.
  375.  
  376.      -_0-_0    lower right hand corner.
  377.  
  378.      +_0-_0    lower left hand corner.
  379.  
  380.      In the following  examples,  a  terminal  emulator  will  be
  381.      placed  in roughly the center of the screen and a load aver-
  382.      age monitor, mailbox, and clock will be placed in the  upper
  383.      right hand corner:
  384.  
  385.          xterm -fn 6x10 -geometry 80x24+30+200 &
  386.          xclock -geometry 48x48-0+0 &
  387.          xload -geometry 48x48-96+0 &
  388.          xbiff -geometry 48x48-48+0 &
  389.  
  390.  
  391.  
  392.  
  393. X Version 11         Last change: Release 5                     6
  394.  
  395.  
  396.  
  397.  
  398.  
  399.  
  400. X(1)                     USER COMMANDS                       X(1)
  401.  
  402.  
  403.  
  404. WINDOW MANAGERS
  405.      The layout of windows on the screen is controlled by special
  406.      programs  called  _w_i_n_d_o_w  _m_a_n_a_g_e_r_s.   Although  many  window
  407.      managers will honor geometry specifications as given, others
  408.      may  choose to ignore them (requiring the user to explicitly
  409.      draw the window's region on the screen with the pointer, for
  410.      example).
  411.  
  412.      Since window managers are regular  (albeit  complex)  client
  413.      programs,  a  variety  of  different  user interfaces can be
  414.      built.  The MIT distribution comes  with  a  window  manager
  415.      named  _t_w_m  which supports overlapping windows, popup menus,
  416.      point-and-click or click-to-type input models,  title  bars,
  417.      nice  icons  (and  an  icon manager for those who don't like
  418.      separate icon windows).
  419.  
  420.      See the user-contributed software in  the  MIT  distribution
  421.      for other popular window managers.
  422.  
  423. FONT NAMES
  424.      Collections of characters for displaying text and symbols in
  425.      X are known as _f_o_n_t_s.  A font typically contains images that
  426.      share a common appearance and look nice together (for  exam-
  427.      ple,  a  single  size,  boldness, slant, and character set).
  428.      Similarly, collections of fonts that are based on  a  common
  429.      type  face  (the  variations are usually called roman, bold,
  430.      italic, bold italic, oblique, and bold oblique)  are  called
  431.      _f_a_m_i_l_i_e_s.
  432.  
  433.      Fonts come in various sizes.  The X server supports _s_c_a_l_a_b_l_e
  434.      fonts,  meaning it is possible to create a font of arbitrary
  435.      size from a single source for the font.  The server supports
  436.      scaling  from  _o_u_t_l_i_n_e fonts and _b_i_t_m_a_p fonts.  Scaling from
  437.      outline fonts usually produces significantly better  results
  438.      than scaling from bitmap fonts.
  439.  
  440.      An X server can obtain fonts from individual files stored in
  441.      directories  in  the  file  system, or from one or more font
  442.      servers, or from a mixtures of directories and font servers.
  443.      The  list  of  places the server looks when trying to find a
  444.      font is controlled by its _f_o_n_t _p_a_t_h.  Although most  instal-
  445.      lations  will choose to have the server start up with all of
  446.      the commonly used font directories in  the  font  path,  the
  447.      font  path can be changed at any time with the _x_s_e_t program.
  448.      However, it is important  to  remember  that  the  directory
  449.      names are on the server's machine, not on the application's.
  450.      The most common fonts use by X servers and font servers  can
  451.      be found in four directories:
  452.  
  453.      /_u_s_r/_l_i_b/_X_1_1/_f_o_n_t_s/_m_i_s_c
  454.              This directory contains  many  miscellaneous  bitmap
  455.              fonts that are useful on all systems.  It contains a
  456.  
  457.  
  458.  
  459. X Version 11         Last change: Release 5                     7
  460.  
  461.  
  462.  
  463.  
  464.  
  465.  
  466. X(1)                     USER COMMANDS                       X(1)
  467.  
  468.  
  469.  
  470.              family of fixed-width fonts, a family of fixed-width
  471.              fonts  from Dale Schumacher, several Kana fonts from
  472.              Sony Corporation, two JIS Kanji  fonts,  two  Hangul
  473.              fonts from Daewoo Electronics, two Hebrew fonts from
  474.              Joseph Friedman, the standard cursor font, two  cur-
  475.              sor  fonts  from  Digital Equipment Corporation, and
  476.              cursor and glyph fonts from  Sun  Microsystems.   It
  477.              also  has  various  font name aliases for the fonts,
  478.              including fixed and variable.
  479.  
  480.      /_u_s_r/_l_i_b/_X_1_1/_f_o_n_t_s/_S_p_e_e_d_o
  481.              This   directory   contains   outline   fonts    for
  482.              Bitstream's  Speedo rasterizer.  A single font face,
  483.              in normal, bold, italic, and bold  italic,  is  pro-
  484.              vided, contributed by Bitstream, Inc.
  485.  
  486.      /_u_s_r/_l_i_b/_X_1_1/_f_o_n_t_s/_7_5_d_p_i
  487.              This directory contains bitmap fonts contributed  by
  488.              Adobe  Systems, Inc., Digital Equipment Corporation,
  489.              Bitstream,  Inc.,  Bigelow  and  Holmes,   and   Sun
  490.              Microsystems,  Inc.   for 75 dots per inch displays.
  491.              An  integrated  selection  of  sizes,  styles,   and
  492.              weights are provided for each family.
  493.  
  494.      /_u_s_r/_l_i_b/_X_1_1/_f_o_n_t_s/_1_0_0_d_p_i
  495.              This directory contains 100 dots per  inch  versions
  496.              of some of the fonts in the _7_5_d_p_i directory.
  497.  
  498.      Bitmap font files are usually created by compiling a textual
  499.      font  description  into  binary  form, using _b_d_f_t_o_p_c_f.  Font
  500.      databases are created by running the  _m_k_f_o_n_t_d_i_r  program  in
  501.      the  directory containing the source or compiled versions of
  502.      the  fonts.   Whenever  fonts  are  added  to  a  directory,
  503.      _m_k_f_o_n_t_d_i_r  should  be  rerun so that the server can find the
  504.      new fonts.  To make the server  reread  the  font  database,
  505.      reset  the font path with the _x_s_e_t program.  For example, to
  506.      add a font to a private directory,  the  following  commands
  507.      could be used:
  508.  
  509.          % cp newfont.pcf ~/myfonts
  510.          % mkfontdir ~/myfonts
  511.          % xset fp rehash
  512.  
  513.      The _x_f_o_n_t_s_e_l and _x_l_s_f_o_n_t_s programs can  be  used  to  browse
  514.      through the fonts available on a server.  Font names tend to
  515.      be fairly long as they contain all of the information needed
  516.      to  uniquely  identify  individual  fonts.   However,  the X
  517.      server supports wildcarding  of  font  names,  so  the  full
  518.      specification
  519.  
  520.          -_a_d_o_b_e-_c_o_u_r_i_e_r-_m_e_d_i_u_m-_r-_n_o_r_m_a_l--_1_0-_1_0_0-_7_5-_7_5-_m-_6_0-_i_s_o_8_8_5_9-_1
  521.  
  522.  
  523.  
  524.  
  525. X Version 11         Last change: Release 5                     8
  526.  
  527.  
  528.  
  529.  
  530.  
  531.  
  532. X(1)                     USER COMMANDS                       X(1)
  533.  
  534.  
  535.  
  536.      might be abbreviated as:
  537.  
  538.          -*-_c_o_u_r_i_e_r-_m_e_d_i_u_m-_r-_n_o_r_m_a_l--*-_1_0_0-*-*-*-*-_i_s_o_8_8_5_9-_1
  539.  
  540.      Because the shell also has special meanings  for  *  and  ?,
  541.      wildcarded font names should be quoted:
  542.  
  543.          % xlsfonts -fn '-*-courier-medium-r-normal--*-100-*-*-*-*-*-*'
  544.  
  545.      The _x_l_s_f_o_n_t_s program can be used to list all  of  the  fonts
  546.      that match a given pattern.  With no arguments, it lists all
  547.      available fonts.  This will usually list the  same  font  at
  548.      many  different  sizes.   To see just the base scalable font
  549.      names, try using one of the following patterns:
  550.  
  551.          -*-*-*-*-*-*-_0-_0-_0-_0-*-_0-*-*
  552.          -*-*-*-*-*-*-_0-_0-_7_5-_7_5-*-_0-*-*
  553.          -*-*-*-*-*-*-_0-_0-_1_0_0-_1_0_0-*-_0-*-*
  554.  
  555.      To convert one of the resulting  names  into  a  font  at  a
  556.      specific  size,  replace  one  of the first two zeros with a
  557.      nonzero value.  The field containing the first zero  is  for
  558.      the  pixel size; replace it with a specific height in pixels
  559.      to name a font at that size.  Alternatively, the field  con-
  560.      taining  the  second  zero is for the point size; replace it
  561.      with a specific size in decipoints (there  are  722.7  deci-
  562.      points  to  the inch) to name a font at that size.  The last
  563.      zero is an average width field, measured in tenths  of  pix-
  564.      els; some servers will anamorphically scale if this value is
  565.      specified.
  566.  
  567. FONT SERVER NAMES
  568.      One of the following forms can be used to name a font server
  569.      that accepts TCP connections:
  570.  
  571.          tcp/_h_o_s_t_n_a_m_e:_p_o_r_t
  572.          tcp/_h_o_s_t_n_a_m_e:_p_o_r_t/_c_a_t_a_l_o_g_u_e_l_i_s_t
  573.  
  574.      The _h_o_s_t_n_a_m_e specifies the name (or decimal numeric address)
  575.      of  the  machine  on  which the font server is running.  The
  576.      _p_o_r_t is the decimal TCP port on which  the  font  server  is
  577.      listening  for  connections.   The _c_a_t_a_l_o_g_u_e_l_i_s_t specifies a
  578.      list of catalogue names, with '+' as a separator.
  579.  
  580.      Examples:                         _t_c_p/_e_x_p_o._l_c_s._m_i_t._e_d_u:_7_0_0_0,
  581.      _t_c_p/_1_8._3_0._0._2_1_2:_7_0_0_1/_a_l_l.
  582.  
  583.      One of the following forms can be used to name a font server
  584.      that accepts DECnet connections:
  585.  
  586.          decnet/_n_o_d_e_n_a_m_e::font$_o_b_j_n_a_m_e
  587.          decnet/_n_o_d_e_n_a_m_e::font$_o_b_j_n_a_m_e/_c_a_t_a_l_o_g_u_e_l_i_s_t
  588.  
  589.  
  590.  
  591. X Version 11         Last change: Release 5                     9
  592.  
  593.  
  594.  
  595.  
  596.  
  597.  
  598. X(1)                     USER COMMANDS                       X(1)
  599.  
  600.  
  601.  
  602.      The _n_o_d_e_n_a_m_e specifies the name (or decimal numeric address)
  603.      of  the  machine  on  which the font server is running.  The
  604.      _o_b_j_n_a_m_e is a normal, case-insensitive  DECnet  object  name.
  605.      The  _c_a_t_a_l_o_g_u_e_l_i_s_t specifies a list of catalogue names, with
  606.      '+' as a separator.
  607.  
  608.      Examples:                       _D_E_C_n_e_t/_S_R_V_N_O_D::_F_O_N_T$_D_E_F_A_U_L_T,
  609.      _d_e_c_n_e_t/_4_4._7_0::_f_o_n_t$_s_p_e_c_i_a_l/_s_y_m_b_o_l_s.
  610.  
  611. COLOR NAMES
  612.      Most applications provide ways of tailoring (usually through
  613.      resources  or  command line arguments) the colors of various
  614.      elements in the text and graphics they display.  A color can
  615.      be  specified  either  by  an  abstract  color name, or by a
  616.      numerical color specification.  The numerical  specification
  617.      can  identify  a  color  in either device-dependent (RGB) or
  618.      device-independent   terms.    Color   strings   are   case-
  619.      insensitive.
  620.  
  621.      X supports the use of abstract  color  names,  for  example,
  622.      "red",  "blue".   A value for this abstract name is obtained
  623.      by searching one or more color name databases.   _X_l_i_b  first
  624.      searches  zero  or  more  client-side databases; the number,
  625.      location, and content of these databases  is  implementation
  626.      dependent.  If the name is not found, the color is looked up
  627.      in the X server's database.  The text form of this  database
  628.      is commonly stored in the file /_u_s_r/_l_i_b/_X_1_1/_r_g_b._t_x_t.
  629.  
  630.      A numerical color specification consists of  a  color  space
  631.      name and a set of values in the following syntax:
  632.  
  633.          <_c_o_l_o_r__s_p_a_c_e__n_a_m_e>:<_v_a_l_u_e>/.../<_v_a_l_u_e>
  634.  
  635.      An RGB Device specification  is  identified  by  the  prefix
  636.      "rgb:" and has the following syntax:
  637.  
  638.          rgb:<_r_e_d>/<_g_r_e_e_n>/<_b_l_u_e>
  639.  
  640.              <_r_e_d>, <_g_r_e_e_n>, <_b_l_u_e> := _h | _h_h | _h_h_h | _h_h_h_h
  641.              _h := single hexadecimal digits
  642.      Note that _h indicates the value scaled in  4  bits,  _h_h  the
  643.      value scaled in 8 bits, _h_h_h the value scaled in 12 bits, and
  644.      _h_h_h_h the value  scaled  in  16  bits,  respectively.   These
  645.      values  are passed directly to the X server, and are assumed
  646.      to be gamma corrected.
  647.  
  648.      The eight primary colors can be represented as:
  649.  
  650.          black                rgb:0/0/0
  651.          red                  rgb:ffff/0/0
  652.          green                rgb:0/ffff/0
  653.          blue                 rgb:0/0/ffff
  654.  
  655.  
  656.  
  657. X Version 11         Last change: Release 5                    10
  658.  
  659.  
  660.  
  661.  
  662.  
  663.  
  664. X(1)                     USER COMMANDS                       X(1)
  665.  
  666.  
  667.  
  668.          yellow               rgb:ffff/ffff/0
  669.          magenta              rgb:ffff/0/ffff
  670.          cyan                 rgb:0/ffff/ffff
  671.          white                rgb:ffff/ffff/ffff
  672.  
  673.      For backward compatibility, an older syntax for  RGB  Device
  674.      is  supported, but its continued use is not encouraged.  The
  675.      syntax is an initial sharp  sign  character  followed  by  a
  676.      numeric specification, in one of the following formats:
  677.  
  678.          #RGB                      (4 bits each)
  679.          #RRGGBB                   (8 bits each)
  680.          #RRRGGGBBB                (12 bits each)
  681.          #RRRRGGGGBBBB             (16 bits each)
  682.  
  683.      The R, G, and B represent single hexadecimal  digits.   When
  684.      fewer  than  16  bits each are specified, they represent the
  685.      most-significant bits of the value (unlike the  "rgb:"  syn-
  686.      tax,  in which values are scaled).  For example, #3a7 is the
  687.      same as #3000a0007000.
  688.  
  689.      An RGB intensity specification is identified by  the  prefix
  690.      "rgbi:" and has the following syntax:
  691.  
  692.          rgbi:<_r_e_d>/<_g_r_e_e_n>/<_b_l_u_e>
  693.  
  694.      The red, green, and blue are floating point  values  between
  695.      0.0  and  1.0,  inclusive.   They represent linear intensity
  696.      values, with 1.0 indicating full intensity, 0.5 half  inten-
  697.      sity,  and  so  on.  These values will be gamma corrected by
  698.      _X_l_i_b before being sent to the X server.   The  input  format
  699.      for  these  values  is an optional sign, a string of numbers
  700.      possibly  containing  a  decimal  point,  and  an   optional
  701.      exponent  field  containing an E or e followed by a possibly
  702.      signed integer string.
  703.  
  704.      The standard device-independent string  specifications  have
  705.      the following syntax:
  706.  
  707.          CIEXYZ:<_X>/<_Y>/<_Z>             (_n_o_n_e, 1, _n_o_n_e)
  708.          CIEuvY:<_u>/<_v>/<_Y>             (~.6, ~.6, 1)
  709.          CIExyY:<_x>/<_y>/<_Y>             (~.75, ~.85, 1)
  710.          CIELab:<_L>/<_a>/<_b>             (100, _n_o_n_e, _n_o_n_e)
  711.          CIELuv:<_L>/<_u>/<_v>             (100, _n_o_n_e, _n_o_n_e)
  712.          TekHVC:<_H>/<_V>/<_C>             (360, 100, 100)
  713.  
  714.      All of the values (C, H, V, X, Y, Z, a, b, u, v, y,  x)  are
  715.      floating  point  values.  Some of the values are constrained
  716.      to be between zero and some upper bound;  the  upper  bounds
  717.      are given in parentheses above.  The syntax for these values
  718.      is an optional '+' or '-' sign, a string of digits  possibly
  719.      containing  a  decimal point, and an optional exponent field
  720.  
  721.  
  722.  
  723. X Version 11         Last change: Release 5                    11
  724.  
  725.  
  726.  
  727.  
  728.  
  729.  
  730. X(1)                     USER COMMANDS                       X(1)
  731.  
  732.  
  733.  
  734.      consisting of an 'E' or 'e' followed by an optional  '+'  or
  735.      '-' followed by a string of digits.
  736.  
  737.      For more information on device independent  color,  see  the
  738.      _X_l_i_b reference manual.
  739.  
  740. KEYBOARDS
  741.      The X keyboard model is broken  into  two  layers:   server-
  742.      specific  codes (called _k_e_y_c_o_d_e_s) which represent the physi-
  743.      cal keys, and server-independent  symbols  (called  _k_e_y_s_y_m_s)
  744.      which  represent  the  letters  or  words that appear on the
  745.      keys. Two tables are kept in the server for converting  key-
  746.      codes to keysyms:
  747.  
  748.      _m_o_d_i_f_i_e_r _l_i_s_t
  749.              Some keys (such as Shift, Control,  and  Caps  Lock)
  750.              are  known  as  _m_o_d_i_f_i_e_r and are used to select dif-
  751.              ferent symbols that are attached  to  a  single  key
  752.              (such   as   Shift-a  generates  a  capital  A,  and
  753.              Control-l generates a control  character  ^L).   The
  754.              server keeps a list of keycodes corresponding to the
  755.              various modifier keys.  Whenever a key is pressed or
  756.              released,  the  server  generates an _e_v_e_n_t that con-
  757.              tains the keycode of the indicated key as well as  a
  758.              mask  that  specifies which of the modifier keys are
  759.              currently pressed.  Most servers set up this list to
  760.              initially  contain  the  various shift, control, and
  761.              shift lock keys on the keyboard.
  762.  
  763.      _k_e_y_m_a_p _t_a_b_l_e
  764.              Applications translate event keycodes  and  modifier
  765.              masks  into  keysyms using a _k_e_y_s_y_m _t_a_b_l_e which con-
  766.              tains one row for each keycode and  one  column  for
  767.              various  modifier states.  This table is initialized
  768.              by the server to  correspond  to  normal  typewriter
  769.              conventions.   The  exact semantics of how the table
  770.              is interpreted to produce  keysyms  depends  on  the
  771.              particular  program,  libraries,  and language input
  772.              method used, but the following conventions  for  the
  773.              first four keysyms in each row are generally adhered
  774.              to:
  775.  
  776.      The first four elements of  the  list  are  split  into  two
  777.      groups  of  keysyms.   Group 1 contains the first and second
  778.      keysyms; Group 2 contains  the  third  and  fourth  keysyms.
  779.      Within  each  group,  if the first element is alphabetic and
  780.      the the second element is the special keysym _N_o_S_y_m_b_o_l,  then
  781.      the  group  is treated as equivalent to a group in which the
  782.      first element is the lowercase letter and the second element
  783.      is the uppercase letter.
  784.  
  785.  
  786.  
  787.  
  788.  
  789. X Version 11         Last change: Release 5                    12
  790.  
  791.  
  792.  
  793.  
  794.  
  795.  
  796. X(1)                     USER COMMANDS                       X(1)
  797.  
  798.  
  799.  
  800.      Switching between groups is controlled by the  keysym  named
  801.      MODE  SWITCH,  by  attaching  that  keysym  to  some key and
  802.      attaching that key to any one of the modifiers Mod1  through
  803.      Mod5.  This modifier is called the ``group modifier.'' Group
  804.      1 is used when the group modifier is off,  and  Group  2  is
  805.      used when the group modifier is on.
  806.  
  807.      Within a group, the modifier state determines  which  keysym
  808.      to  use.   The  first keysym is used when the Shift and Lock
  809.      modifiers are off.  The second keysym is used when the Shift
  810.      modifier  is on, when the Lock modifier is on and the second
  811.      keysym is uppercase alphabetic, or when the Lock modifier is
  812.      on  and  is  interpreted  as ShiftLock.  Otherwise, when the
  813.      Lock modifier is on and  is  interpreted  as  CapsLock,  the
  814.      state  of  the  Shift  modifier is applied first to select a
  815.      keysym; but if that keysym is lowercase alphabetic, then the
  816.      corresponding uppercase keysym is used instead.
  817.  
  818. OPTIONS
  819.      Most X programs attempt to use the same  names  for  command
  820.      line  options  and arguments.  All applications written with
  821.      the X Toolkit Intrinsics automatically accept the  following
  822.      options:
  823.  
  824.      -display _d_i_s_p_l_a_y
  825.              This option specifies the name of the  X  server  to
  826.              use.
  827.  
  828.      -geometry _g_e_o_m_e_t_r_y
  829.              This option specifies the initial size and  location
  830.              of the window.
  831.  
  832.      -bg _c_o_l_o_r, -background _c_o_l_o_r
  833.              Either option specifies the color  to  use  for  the
  834.              window background.
  835.  
  836.      -bd _c_o_l_o_r, -bordercolor _c_o_l_o_r
  837.              Either option specifies the color  to  use  for  the
  838.              window border.
  839.  
  840.      -bw _n_u_m_b_e_r, -borderwidth _n_u_m_b_e_r
  841.              Either option specifies the width in pixels  of  the
  842.              window border.
  843.  
  844.      -fg _c_o_l_o_r, -foreground _c_o_l_o_r
  845.              Either option specifies the color to use for text or
  846.              graphics.
  847.  
  848.      -fn _f_o_n_t, -font _f_o_n_t
  849.              Either option specifies the font to use for display-
  850.              ing text.
  851.  
  852.  
  853.  
  854.  
  855. X Version 11         Last change: Release 5                    13
  856.  
  857.  
  858.  
  859.  
  860.  
  861.  
  862. X(1)                     USER COMMANDS                       X(1)
  863.  
  864.  
  865.  
  866.      -iconic
  867.              This option indicates that  the  user  would  prefer
  868.              that  the  application's  windows  initially  not be
  869.              visible as if the windows had be immediately  iconi-
  870.              fied by the user.  Window managers may choose not to
  871.              honor the application's request.
  872.  
  873.      -name
  874.              This option specifies the name under which resources
  875.              for the application should be found.  This option is
  876.              useful in shell aliases to distinguish between invo-
  877.              cations  of  an  application,  without  resorting to
  878.              creating links to alter the executable file name.
  879.  
  880.      -rv, -reverse
  881.              Either option  indicates  that  the  program  should
  882.              simulate  reverse  video if possible, often by swap-
  883.              ping the foreground and background colors.  Not  all
  884.              programs  honor  this or implement it correctly.  It
  885.              is usually only used on monochrome displays.
  886.  
  887.      +rv
  888.              This option indicates that the  program  should  not
  889.              simulate reverse video. This is used to override any
  890.              defaults since reverse  video  doesn't  always  work
  891.              properly.
  892.  
  893.      -selectionTimeout
  894.              This option specifies the  timeout  in  milliseconds
  895.              within  which  two  communicating  applications must
  896.              respond to one another for a selection request.
  897.  
  898.      -synchronous
  899.              This option indicates that requests to the X  server
  900.              should  be  sent synchronously, instead of asynchro-
  901.              nously.  Since _X_l_i_b normally buffers requests to the
  902.              server,  errors  do  not  necessarily  get  reported
  903.              immediately after they occur.  This option turns off
  904.              the   buffering  so  that  the  application  can  be
  905.              debugged.  It should never be used  with  a  working
  906.              program.
  907.  
  908.      -title _s_t_r_i_n_g
  909.              This option specifies the title to be used for  this
  910.              window.   This  information  is  sometimes used by a
  911.              window manager to provide some sort of header  iden-
  912.              tifying the window.
  913.  
  914.      -xnllanguage _l_a_n_g_u_a_g_e[__t_e_r_r_i_t_o_r_y][._c_o_d_e_s_e_t]
  915.              This option specifies the language,  territory,  and
  916.              codeset  for  use  in  resolving  resource and other
  917.              filenames.
  918.  
  919.  
  920.  
  921. X Version 11         Last change: Release 5                    14
  922.  
  923.  
  924.  
  925.  
  926.  
  927.  
  928. X(1)                     USER COMMANDS                       X(1)
  929.  
  930.  
  931.  
  932.      -xrm _r_e_s_o_u_r_c_e_s_t_r_i_n_g
  933.              This option specifies a resource name and  value  to
  934.              override  any  defaults.  It is also very useful for
  935.              setting resources that don't have  explicit  command
  936.              line arguments.
  937.  
  938. RESOURCES
  939.      To make the tailoring of applications  to  personal  prefer-
  940.      ences  easier,  X  provides  a mechanism for storing default
  941.      values for program resources (e.g. background color,  window
  942.      title,  etc.)  Resources  are  specified as strings that are
  943.      read in from various places  when  an  application  is  run.
  944.      Program components are named in a hierarchical fashion, with
  945.      each node in the hierarchy identified  by  a  class  and  an
  946.      instance  name.   At the top level is the class and instance
  947.      name of the application itself.  By  convention,  the  class
  948.      name of the application is the same as the program name, but
  949.      with  the first letter capitalized (e.g.  _B_i_t_m_a_p  or  _E_m_a_c_s)
  950.      although some programs that begin with the letter ``x'' also
  951.      capitalize the second letter for historical reasons.
  952.  
  953.      The precise syntax for resources is:
  954.  
  955.      ResourceLine      = Comment | IncludeFile | ResourceSpec | <empty line>
  956.      Comment           = "!" {<any character except null or newline>}
  957.      IncludeFile       = "#" WhiteSpace "include" WhiteSpace FileName WhiteSpace
  958.      FileName          = <valid filename for operating system>
  959.      ResourceSpec      = WhiteSpace ResourceName WhiteSpace ":" WhiteSpace Value
  960.      ResourceName      = [Binding] {Component Binding} ComponentName
  961.      Binding           = "." | "*"
  962.      WhiteSpace        = {<space> | <horizontal tab>}
  963.      Component         = "?" | ComponentName
  964.      ComponentName     = NameChar {NameChar}
  965.      NameChar          = "a"-"z" | "A"-"Z" | "0"-"9" | "_" | "-"
  966.      Value             = {<any character except null or unescaped newline>}
  967.  
  968.      Elements separated by vertical  bar  (|)  are  alternatives.
  969.      Curly  braces  ({...})  indicate zero or more repetitions of
  970.      the enclosed elements.   Square  brackets  ([...])  indicate
  971.      that  the  enclosed element is optional.  Quotes ("...") are
  972.      used around literal characters.
  973.  
  974.      IncludeFile lines are interpreted by replacing the line with
  975.      the contents of the specified file.  The word "include" must
  976.      be in lowercase.  The filename is  interpreted  relative  to
  977.      the  directory  of  the  file  in which the line occurs (for
  978.      example, if the filename contains no directory or contains a
  979.      relative directory specification).
  980.  
  981.      If a ResourceName contains a contiguous sequence of  two  or
  982.      more  Binding characters, the sequence will be replaced with
  983.      single "." character  if  the  sequence  contains  only  "."
  984.  
  985.  
  986.  
  987. X Version 11         Last change: Release 5                    15
  988.  
  989.  
  990.  
  991.  
  992.  
  993.  
  994. X(1)                     USER COMMANDS                       X(1)
  995.  
  996.  
  997.  
  998.      characters,  otherwise  the sequence will be replaced with a
  999.      single "*" character.
  1000.  
  1001.      A resource database never contains more than one entry for a
  1002.      given  ResourceName.   If  a resource file contains multiple
  1003.      lines with the same ResourceName, the last line in the  file
  1004.      is used.
  1005.  
  1006.      Any whitespace character before or after the name  or  colon
  1007.      in  a  ResourceSpec  are ignored.  To allow a Value to begin
  1008.      with  whitespace,  the  two-character  sequence   ``\_s_p_a_c_e''
  1009.      (backslash  followed by space) is recognized and replaced by
  1010.      a space character, and the two-character  sequence  ``\_t_a_b''
  1011.      (backslash  followed  by  horizontal  tab) is recognized and
  1012.      replaced by a horizontal tab character.  To allow a Value to
  1013.      contain   embedded  newline  characters,  the  two-character
  1014.      sequence ``\n'' is recognized  and  replaced  by  a  newline
  1015.      character.   To  allow  a Value to be broken across multiple
  1016.      lines in a text file,  the  two-character  sequence  ``\_n_e_w_-
  1017.      _l_i_n_e''  (backslash  followed  by  newline) is recognized and
  1018.      removed from the value.  To allow a Value to  contain  arbi-
  1019.      trary character codes, the four-character sequence ``\_n_n_n'',
  1020.      where  each  _n  is  a  digit  character  in  the  range   of
  1021.      ``0''-``7'',  is  recognized and replaced with a single byte
  1022.      that contains the octal value  specified  by  the  sequence.
  1023.      Finally, the two-character sequence ``\\'' is recognized and
  1024.      replaced with a single backslash.
  1025.  
  1026.      When an application looks for the value of  a  resource,  it
  1027.      specifies  a complete path in the hierarchy, with both class
  1028.      and instance names.  However, resource  values  are  usually
  1029.      given with only partially specified names and classes, using
  1030.      pattern matching constructs.  An asterisk  (*)  is  a  loose
  1031.      binding  and  is used to represent any number of intervening
  1032.      components, including none.  A period (.) is a tight binding
  1033.      and  is used to separate immediately adjacent components.  A
  1034.      question mark (?) is used to match any single component name
  1035.      or  class.   A database entry cannot end in a loose binding;
  1036.      the final component (which cannot be "?") must be specified.
  1037.      The  lookup algorithm searches the resource database for the
  1038.      entry that most closely matches (is most specific  for)  the
  1039.      full name and class being queried.  When more than one data-
  1040.      base entry matches the full name and class, precedence rules
  1041.      are used to select just one.
  1042.  
  1043.      The full name and class are scanned from left to right (from
  1044.      highest  level in the hierarchy to lowest), one component at
  1045.      a time.  At each level, the corresponding  component  and/or
  1046.      binding  of  each  matching  entry  is determined, and these
  1047.      matching components and bindings are compared  according  to
  1048.      precedence  rules.   Each  of  the  rules is applied at each
  1049.      level, before moving to the next level, until a rule selects
  1050.  
  1051.  
  1052.  
  1053. X Version 11         Last change: Release 5                    16
  1054.  
  1055.  
  1056.  
  1057.  
  1058.  
  1059.  
  1060. X(1)                     USER COMMANDS                       X(1)
  1061.  
  1062.  
  1063.  
  1064.      a single entry over all others.  The rules (in order of pre-
  1065.      cedence) are:
  1066.  
  1067.      1.   An entry that contains a  matching  component  (whether
  1068.           name, class, or "?") takes precedence over entries that
  1069.           elide the level (that is, entries that match the  level
  1070.           in a loose binding).
  1071.  
  1072.      2.   An entry with a matching  name  takes  precedence  over
  1073.           both  entries  with  a  matching class and entries that
  1074.           match using "?".  An entry with a matching class  takes
  1075.           precedence over entries that match using "?".
  1076.  
  1077.      3.   An entry preceded by a tight binding  takes  precedence
  1078.           over entries preceded by a loose binding.
  1079.  
  1080.      Programs based on the X Tookit Intrinsics  obtain  resources
  1081.      from  the  following sources (other programs usually support
  1082.      some subset of these sources):
  1083.  
  1084.      RESOURCE_MANAGER root window property
  1085.              Any global resources that  should  be  available  to
  1086.              clients  on  all  machines  should  be stored in the
  1087.              RESOURCE_MANAGER property on the root window of  the
  1088.              first  screen  using the _x_r_d_b program.  This is fre-
  1089.              quently taken care of when  the  user  starts  up  X
  1090.              through the display manager or _x_i_n_i_t.
  1091.  
  1092.      SCREEN_RESOURCES root window property
  1093.              Any resources  specific  to  a  given  screen  (e.g.
  1094.              colors)  that  should be available to clients on all
  1095.              machines should be stored  in  the  SCREEN_RESOURCES
  1096.              property  on  the  root  window of that screen.  The
  1097.              _x_r_d_b program will sort resources  automatically  and
  1098.              place  them in RESOURCE_MANAGER or SCREEN_RESOURCES,
  1099.              as appropriate.
  1100.  
  1101.      application-specific files
  1102.              Directories named by the environment variable XUSER-
  1103.              FILESEARCHPATH or the environment variable XAPPLRES-
  1104.              DIR, plus directories in a standard  place  (usually
  1105.              under /usr/lib/X11/, but this can be overridden with
  1106.              the  XFILESEARCHPATH   environment   variable)   are
  1107.              searched  for  for  application-specific  resources.
  1108.              For example, application default resources are  usu-
  1109.              ally  kept in /usr/lib/X11/app-defaults/.  See the _X
  1110.              _T_o_o_l_k_i_t _I_n_t_r_i_n_s_i_c_s - _C _L_a_n_g_u_a_g_e _I_n_t_e_r_f_a_c_e manual for
  1111.              details.
  1112.  
  1113.      XENVIRONMENT
  1114.              Any user-  and  machine-specific  resources  may  be
  1115.              specified  by  setting  the XENVIRONMENT environment
  1116.  
  1117.  
  1118.  
  1119. X Version 11         Last change: Release 5                    17
  1120.  
  1121.  
  1122.  
  1123.  
  1124.  
  1125.  
  1126. X(1)                     USER COMMANDS                       X(1)
  1127.  
  1128.  
  1129.  
  1130.              variable to the name of a resource file to be loaded
  1131.              by  all  applications.   If  this  variable  is  not
  1132.              defined, a file named  $_H_O_M_E/.Xdefaults-_h_o_s_t_n_a_m_e  is
  1133.              looked  for  instead,  where _h_o_s_t_n_a_m_e is the name of
  1134.              the host where the application is executing.
  1135.  
  1136.      -xrm _r_e_s_o_u_r_c_e_s_t_r_i_n_g
  1137.              Resources can also be  specified  from  the  command
  1138.              line.   The _r_e_s_o_u_r_c_e_s_t_r_i_n_g is a single resource name
  1139.              and value as shown above.  Note that if  the  string
  1140.              contains  characters interpreted by the shell (e.g.,
  1141.              asterisk), they must be quoted.  Any number of  -xrm
  1142.              arguments may be given on the command line.
  1143.  
  1144.      Program resources are organized into groups called  _c_l_a_s_s_e_s,
  1145.      so  that  collections of individual resources (each of which
  1146.      are called _i_n_s_t_a_n_c_e_s) can be set all at  once.   By  conven-
  1147.      tion,  the  instance name of a resource begins with a lower-
  1148.      case letter and class name with an upper case letter.   Mul-
  1149.      tiple  word resources are concatenated with the first letter
  1150.      of the succeeding words capitalized.   Applications  written
  1151.      with the X Toolkit Intrinsics will have at least the follow-
  1152.      ing resources:
  1153.  
  1154.      background (class Background)
  1155.              This resource specifies the color  to  use  for  the
  1156.              window background.
  1157.  
  1158.      borderWidth (class BorderWidth)
  1159.              This resource specifies the width in pixels  of  the
  1160.              window border.
  1161.  
  1162.      borderColor (class BorderColor)
  1163.              This resource specifies the color  to  use  for  the
  1164.              window border.
  1165.  
  1166.      Most applications using the X Toolkit Intrinsics  also  have
  1167.      the  resource  foreground (class Foreground), specifying the
  1168.      color to use for text and graphics within the window.
  1169.  
  1170.      By combining class and instance specifications,  application
  1171.      preferences  can  be set quickly and easily.  Users of color
  1172.      displays will frequently want to set  Background  and  Fore-
  1173.      ground  classes  to  particular  defaults.   Specific  color
  1174.      instances such  as  text  cursors  can  then  be  overridden
  1175.      without  having to define all of the related resources.  For
  1176.      example,
  1177.  
  1178.          bitmap*Dashed:  off
  1179.          XTerm*cursorColor:  gold
  1180.          XTerm*multiScroll:  on
  1181.          XTerm*jumpScroll:  on
  1182.  
  1183.  
  1184.  
  1185. X Version 11         Last change: Release 5                    18
  1186.  
  1187.  
  1188.  
  1189.  
  1190.  
  1191.  
  1192. X(1)                     USER COMMANDS                       X(1)
  1193.  
  1194.  
  1195.  
  1196.          XTerm*reverseWrap:  on
  1197.          XTerm*curses:  on
  1198.          XTerm*Font:  6x10
  1199.          XTerm*scrollBar: on
  1200.          XTerm*scrollbar*thickness: 5
  1201.          XTerm*multiClickTime: 500
  1202.          XTerm*charClass:  33:48,37:48,45-47:48,64:48
  1203.          XTerm*cutNewline: off
  1204.          XTerm*cutToBeginningOfLine: off
  1205.          XTerm*titeInhibit:  on
  1206.          XTerm*ttyModes:  intr ^c erase ^? kill ^u
  1207.          XLoad*Background: gold
  1208.          XLoad*Foreground: red
  1209.          XLoad*highlight: black
  1210.          XLoad*borderWidth: 0
  1211.          emacs*Geometry:  80x65-0-0
  1212.          emacs*Background:  rgb:5b/76/86
  1213.          emacs*Foreground:  white
  1214.          emacs*Cursor:  white
  1215.          emacs*BorderColor:  white
  1216.          emacs*Font:  6x10
  1217.          xmag*geometry: -0-0
  1218.          xmag*borderColor:  white
  1219.  
  1220.      If these resources were stored in a file called  ._X_r_e_s_o_u_r_c_e_s
  1221.      in  your home directory, they could be added to any existing
  1222.      resources in the server with the following command:
  1223.  
  1224.          % xrdb -merge $HOME/.Xresources
  1225.  
  1226.      This is frequently how user-friendly startup  scripts  merge
  1227.      user-specific  defaults  into  any  site-wide defaults.  All
  1228.      sites are encouraged to set up convenient ways of  automati-
  1229.      cally   loading  resources.  See  the  _X_l_i_b  manual  section
  1230.      _R_e_s_o_u_r_c_e _M_a_n_a_g_e_r _F_u_n_c_t_i_o_n_s for more information.
  1231.  
  1232. EXAMPLES
  1233.      The following is a collection of sample  command  lines  for
  1234.      some  of the more frequently used commands.  For more infor-
  1235.      mation  on  a  particular  command,  please  refer  to  that
  1236.      command's manual page.
  1237.  
  1238.          %  xrdb $HOME/.Xresources
  1239.          %  xmodmap -e "keysym BackSpace = Delete"
  1240.          %  mkfontdir /usr/local/lib/X11/otherfonts
  1241.          %  xset fp+ /usr/local/lib/X11/otherfonts
  1242.          %  xmodmap $HOME/.keymap.km
  1243.          %  xsetroot -solid 'rgbi:.8/.8/.8'
  1244.          %  xset b 100 400 c 50 s 1800 r on
  1245.          %  xset q
  1246.          %  twm
  1247.          %  xmag
  1248.  
  1249.  
  1250.  
  1251. X Version 11         Last change: Release 5                    19
  1252.  
  1253.  
  1254.  
  1255.  
  1256.  
  1257.  
  1258. X(1)                     USER COMMANDS                       X(1)
  1259.  
  1260.  
  1261.  
  1262.          %  xclock -geometry 48x48-0+0 -bg blue -fg white
  1263.          %  xeyes -geometry 48x48-48+0
  1264.          %  xbiff -update 20
  1265.          %  xlsfonts '*helvetica*'
  1266.          %  xwininfo -root
  1267.          %  xdpyinfo -display joesworkstation:0
  1268.          %  xhost -joesworkstation
  1269.          %  xrefresh
  1270.          %  xwd | xwud
  1271.          %  bitmap companylogo.bm 32x32
  1272.          %  xcalc -bg blue -fg magenta
  1273.          %  xterm -geometry 80x66-0-0 -name myxterm $*
  1274.          %  xon filesysmachine xload
  1275.  
  1276. DIAGNOSTICS
  1277.      A wide variety of error messages are generated from  various
  1278.      programs.   The  default error handler in _X_l_i_b (also used by
  1279.      many toolkits) uses standard resources to construct diagnos-
  1280.      tic messages when errors occur.  The defaults for these mes-
  1281.      sages are usually stored in /_u_s_r/_l_i_b/_X_1_1/_X_E_r_r_o_r_D_B.  If  this
  1282.      file is not present, error messages will be rather terse and
  1283.      cryptic.
  1284.  
  1285.      When the X Toolkit Intrinsics  encounter  errors  converting
  1286.      resource  strings  to  the  appropriate  internal format, no
  1287.      error messages are usually printed.  This is convenient when
  1288.      it  is  desirable  to  have  one  set  of resources across a
  1289.      variety of displays (e.g.  color  vs.  monochrome,  lots  of
  1290.      fonts vs. very few, etc.), although it can pose problems for
  1291.      trying to determine why an  application  might  be  failing.
  1292.      This   behavior   can  be  overridden  by  the  setting  the
  1293.      _S_t_r_i_n_g_C_o_n_v_e_r_s_i_o_n_s_W_a_r_n_i_n_g resource.
  1294.  
  1295.      To force the X Toolkit Intrinsics  to  always  print  string
  1296.      conversion  error messages, the following resource should be
  1297.      placed   in   the   file   that   gets   loaded   onto   the
  1298.      RESOURCE_MANAGER property using the _x_r_d_b program (frequently
  1299.      called ._X_r_e_s_o_u_r_c_e_s or ._X_r_e_s in the user's home directory):
  1300.  
  1301.          *StringConversionWarnings: on
  1302.  
  1303.      To have conversion messages printed for  just  a  particular
  1304.      application,  the  appropriate  instance  name can be placed
  1305.      before the asterisk:
  1306.  
  1307.          xterm*StringConversionWarnings: on
  1308.  
  1309. SEE ALSO
  1310.      XConsortium(1),  XStandards(1),   Xsecurity(1),   appres(1),
  1311.      auto_box(1),  bdftopcf(1),  beach_ball(1),  bitmap(1),  edi-
  1312.      tres(1), fs(1), fsinfo(1), fslsfonts(1), fstobdf(1), ico(1),
  1313.      imake(1),   listres(1),  lndir(1),  makedepend(1),  maze(1),
  1314.  
  1315.  
  1316.  
  1317. X Version 11         Last change: Release 5                    20
  1318.  
  1319.  
  1320.  
  1321.  
  1322.  
  1323.  
  1324. X(1)                     USER COMMANDS                       X(1)
  1325.  
  1326.  
  1327.  
  1328.      mkdirhier(1), mkfontdir(1), oclock(1), plbpex(1), puzzle(1),
  1329.      resize(1),   showfont(1),  showrgb(1),  twm(1),  viewres(1),
  1330.      x11perf(1), x11perfcomp(1),  xauth(1),  xbiff(1),  xcalc(1),
  1331.      xclipboard(1),   xclock(1),  xcmsdb(1),  xcmstest(1),  xcon-
  1332.      sole(1), xcutsel(1),  xditview(1),  xdm(1),  xdpr(1),  xdpy-
  1333.      info(1),  xedit(1),  xev(1),  xeyes(1), xfd(1), xfontsel(1),
  1334.      xgas(1), xgc(1),  xhost(1),  xinit(1),  xkill(1),  xload(1),
  1335.      xlogo(1),  xlsatoms(1), xlsclients(1), xlsfonts(1), xmag(1),
  1336.      xman(1),  xmh(1),  xmkmf(1),  xmodmap(1),  xon(1),   xpr(1),
  1337.      xprop(1),   xrdb(1),   xrefresh(1),   xset(1),  xsetroot(1),
  1338.      xstdcmap(1),   xterm(1),   xwd(1),   xwininfo(1),   xwud(1),
  1339.      Xserver(1),    Xdec(1),   XmacII(1),   Xmips(1),   Xqdss(1),
  1340.      Xqvss(1), Xsun(1), X386(1), kbd_mode(1), _X_l_i_b - _C _L_a_n_g_u_a_g_e _X
  1341.      _I_n_t_e_r_f_a_c_e, and _X _T_o_o_l_k_i_t _I_n_t_r_i_n_s_i_c_s - _C _L_a_n_g_u_a_g_e _I_n_t_e_r_f_a_c_e
  1342.  
  1343. COPYRIGHT
  1344.      The following copyright and permission notice  outlines  the
  1345.      rights and restrictions covering most parts of the core dis-
  1346.      tribution of the X Window System from MIT.  Other parts have
  1347.      additional  or different copyrights and permissions; see the
  1348.      individual source files.
  1349.  
  1350.      Copyright 1984, 1985, 1986, 1987, 1988, 1989, 1990, 1991  by
  1351.      the Massachusetts Institute of Technology.
  1352.  
  1353.      Permission to use, copy, modify, distribute, and  sell  this
  1354.      software  and  its  documentation  for any purpose is hereby
  1355.      granted without  fee,  provided  that  the  above  copyright
  1356.      notice  appear  in  all  copies and that both that copyright
  1357.      notice and this permission notice appear in supporting docu-
  1358.      mentation, and that the name of MIT not be used in advertis-
  1359.      ing or publicity pertaining to distribution of the  software
  1360.      without  specific,  written  prior permission.  MIT makes no
  1361.      representations about the suitability of this  software  for
  1362.      any  purpose.   It  is  provided  "as is" without express or
  1363.      implied warranty.
  1364.  
  1365. TRADEMARKS
  1366.      X Window System is a trademark of MIT.
  1367.  
  1368. AUTHORS
  1369.      A cast of thousands, literally.  The MIT Release 5 distribu-
  1370.      tion  is  brought to you by the MIT X Consortium.  The names
  1371.      of all people who made it a reality will  be  found  in  the
  1372.      individual documents and source files.  The staff members at
  1373.      MIT responsible for this release are: Donna Converse (MIT  X
  1374.      Consortium),  Stephen Gildea (MIT X Consortium), Susan Hardy
  1375.      (MIT X Consortium), Jay  Hersh  (MIT  X  Consortium),  Keith
  1376.      Packard  (MIT X Consortium), David Sternlicht (MIT X Consor-
  1377.      tium), Bob Scheifler (MIT X  Consortium),  and  Ralph  Swick
  1378.      (Digital/MIT Project Athena).
  1379.  
  1380.  
  1381.  
  1382.  
  1383. X Version 11         Last change: Release 5                    21
  1384.  
  1385.  
  1386.  
  1387.